import { defineStore } from 'pinia';

//获取所有菜单
export const useMenu = defineStore('menu', {
	state: () => {
		return {
			// menuList: sessionStorage.getItem('menuList')?sessionStorage.getItem('menuList'):[],
			menuList: localStorage.getItem('menuList')?localStorage.getItem('menuList'):[],
			menuRouter:[],//路由信息
			// menuIds:[],//菜单ids
		};
	},
	getters: {},
	actions: {
		setMenuList(data){
			this.menuList=data;
			// this.menuIds = this.getNewTree(data)
			//console.log("this.menuId>>",this.menuIds)	
		},
		getNewTree(obj){//用来获取所有的当前用户的菜单id 后端已经处理了可以不用写 
			let data = []
			 obj.map(item=>{
				// console.log('item.id>>',item.id,item.menuName)
				data.push(item.id)
				if(item.subMenus&&item.subMenus.length>0){
					 item.subMenus.map(subItem=>{
						data.push(subItem.id)
					 })
					// this.getNewTree(item.subMenus)
				}
			})
			console.log('data>>',data)
			return data;
			},

		//设置路由：data-->后端传入的路由信息
	// 	setMenuRouter(data){
	// 		console.log('routerdata')
	// 		data.forEach(item=>{
	// 			if(item.subMenus){
	// 				item.subMenus.forEach(subItem=>{
	// 					// console.log('subItem.menuUrl>>',subItem.menuUrl)
	// 					// console.log('subItem>>',subItem)
	// 					//定义一个对象--》routerInfo个数话后端传入的路由信息
	// 					let routerInfo={
	// 						path:subItem.menuUrl,
	// 						name:subItem.menuName,
	// 						meta:{
	// 							title:subItem.menuName,
	// 							permiss:subItem.id,
	// 						},
	// 					   component:() => import(/*@vite-ignore */`@view/${subItem.menuUrl}.vue`)
	// 					 //component:()=>import(`@/view/${subItem.menuUrl}`),
	// 					}
	// 					this.menuRouter.push(routerInfo)//添加到home子路由下
	// 				})
					
	// 			}

	// 		})
	// 		console.log('route>>',this.menuRouter)	
	// 	},
		
	},
	//所有数据持久化
	// persist:true,
	//持久化存储插件其他配置
	persist:{
		// enabled:true,//开启
		//修改为sessionStorage 默认为localStorage
		// storage:sessionStorage,
		//修改存储中使用的键名称，默认当前Store的id
		// key:'menu',
		// //指定要持久化的字段
		paths:['menuList','menuIds']
	},
});